package services;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

import javax.faces.bean.ApplicationScoped;
import javax.faces.bean.ManagedBean;

import modelo.Domicilio;
import modelo.Interesado;
import modelo.Persona;
import modelo.Telefonopersona;
import modelo.Usuario;
import dao.InteresadoDao;

@ManagedBean(name = "interesadoService", eager = true)
@ApplicationScoped
public class InteresadoService implements Serializable {

	private static final long serialVersionUID = 986331610219767688L;
	
	private Interesado interesado;
	private List<Interesado> listaInteresado;
	private List<Interesado> listaInteresadoFiltrada;
	private InteresadoDao interesadoDao;
	
	public InteresadoService() {
		super();
		this.interesado = new Interesado();
		this.listaInteresado = new ArrayList<Interesado>();
		this.listaInteresadoFiltrada = new ArrayList<Interesado>();
		this.interesadoDao = new InteresadoDao();
		
		listaInteresado = interesadoDao.obtenerInteresado();
		listaInteresadoFiltrada =interesadoDao.obtenerInteresadoFiltrado();

	}
	
	public void guardarInteresado(Usuario u, Persona p, Domicilio d, List<Telefonopersona> listTel) throws Exception
	{
		interesadoDao.guardarInteresado(u, p, d, listTel);
	}
	
	public Interesado getInteresado() {
		return interesado;
	}

	public void setInteresado(Interesado interesado) {
		this.interesado = interesado;
	}

	public List<Interesado> getListaInteresado() {
		return listaInteresado;
	}

	public void setListaInteresado(List<Interesado> listaInteresado) {
		this.listaInteresado = listaInteresado;
	}

	public InteresadoDao getInteresadoDao() {
		return interesadoDao;
	}

	public void setInteresadoDao(InteresadoDao interesadoDao) {
		this.interesadoDao = interesadoDao;
	}

	public List<Interesado>getListaInteresadoFiltrada() {
		return listaInteresadoFiltrada;
	}

	public void setListaInteresadoFiltrada(
			List<Interesado> listaInteresadoFiltrada) {
		this.listaInteresadoFiltrada = listaInteresadoFiltrada;
	}
		
}